package io.itit.ecp.admin.server.service;

import icu.mhb.mybatisplus.plugln.base.service.JoinIService;
import io.itit.ecp.admin.server.entity.SceneEdificeEntity;

import java.util.List;

/**
 * <p>
 *
 * @Author：Roy
 * @Description：楼栋服务类
 * @Date：Create by 2023-11-23 09:55:22
 */
public interface ISceneEdificeService extends JoinIService<SceneEdificeEntity> {

    /**
     * 新增楼栋及楼层信息
     * @param entity        楼栋信息
     * @param floorJson     楼层信息
     */
    boolean saveEdifice(SceneEdificeEntity entity, String floorJson);

    /**
     * 更新楼栋及楼层信息
     * @param entity        楼栋信息
     * @param floorJson     楼层信息
     */
    boolean updateEdifice(SceneEdificeEntity entity, String floorJson);


    /**
     * 导入时保存楼栋信息及初始化楼层信息
     * @param entities
     * @return
     */
    boolean saveEdificeBatch(List<SceneEdificeEntity> entities);


    /**
     * 删除楼栋信息
     * @param ids
     */
    boolean removeEdifices(List<String> ids);

    /**
     * 获取场景名称
     * @param edificeId
     * @param floorId
     * @param roomId
     * @return
     */
    String getSceneInfoName(String edificeId, String floorId, String roomId);

}
